#ifndef CORVETTECONFIGURATION_H_
#define CORVETTECONFIGURATION_H_
#include "RectangularBoatShape.h"
#include "InvalidBoatConfiguration.h"
#include "Dimension.h"

class CorvetteConfiguration {
public:
	CorvetteConfiguration(int);
	virtual ~CorvetteConfiguration();

	static CorvetteConfiguration* createCorvetteConfiguration(int) throw (InvalidBoatConfiguration);

	virtual RectangularBoatShape* getShape(const string&, const Point<int>&, char) const = 0;

	int getNumberConfiguration() const;
private:
	int numberConfiguration;
};

class CorvetteConfiguration1 : public CorvetteConfiguration {
public:
	CorvetteConfiguration1();
	virtual ~CorvetteConfiguration1();

	virtual RectangularBoatShape* getShape(const string&, const Point<int>&, char) const;
};

#endif
